#ifndef XX_COMMON_DEF_H_
#define XX_COMMON_DEF_H_

#include <Windows.h>

#include <map>
#include <vector>
#include <string>
#include <xstring>
using std::wstring;
using std::iterator;
using std::map;
using std::vector;

#define CONFIG_PATH "config.ini"
#define TEMP_DIR "C:\\WINDOWS\\Temp"
#define TEMP_CONFIG_PATH "C:\\WINDOWS\\Temp\\config.ini"
#define WINSOCK_VER2 "ws2_32.dll"
#define WINSOCK_VER  "ws_32.dll"
#define WINSOCK2 WINSOCK_VER2
#define HOOK_PATH "HookProxy.dll"
typedef DWORD (WINAPI *ThreadProc)(LPVOID);

#ifndef EXPORT_API
#define EXPORT_API __declspec(dllexport)
#endif

typedef unsigned short port_t;
typedef unsigned char BYTE;
typedef BYTE * PBYTE;

//#define max(a, b) (((a)>(b))?(a):(b))

struct Config{
    std::vector<port_t> port;
	std::string proxy_addr;
	std::vector<std::string> ignore_proc;
};


#endif